Skip to content

System Software

16.1 Purposes of an Operating System (OS)

Candidates should be able to:

  1. Show understanding of how an OS can maximise the use of resources
  2. Describe the ways in which the user interface hides the complexities of the hardware from the user
  3. Show understanding of process management

Notes and guidance

  1. The concept of multi-tasking and a process The process states: running, ready and blocked The need for scheduling and the function and benefits of different scheduling routines (including round robin, shortest job first, first come first served, shortest remaining time)
  2. How the kernel of the OS acts as an interrupt handler and how interrupt handling is used to manage low-level scheduling
  1. Show understanding of virtual memory, paging and segmentation for memory management

Notes and guidance

  1. The concepts of paging, virtual memory and segmentation
  2. The difference between paging and segmentation How pages can be replaced
  3. How disk thrashing can occur

16.2 Translation Software

Candidates should be able to:

  1. Show understanding of how an interpreter can execute programs without producing a translated version
  2. Show understanding of the various stages in the compilation of a program

Notes and guidance

Including lexical analysis, syntax analysis, code generation and optimisation

  1. Show understanding of how the grammar of a language can be expressed using syntax diagrams or Backus-Naur Form (BNF) notation
  2. Show understanding of how Reverse Polish Notation (RPN) can be used to carry out the evaluation of expressions